package aam.model.board;

import java.util.HashMap;
import java.util.List;

public interface BoardDao {
	public List<BoardVO> getAllView(HashMap map) throws Exception;
	public List<BoardVO> getAllViewWithGenre(HashMap map) throws Exception;
	public List<String> getGenreList()throws Exception;
	public int getGenreNo(String genreName) throws Exception;
	public String getBoardNameByBoardNo(int boardNo) throws Exception;
	public int getBoardTotalCount(int boardNo) throws Exception;
	
	public void updateCount(int no) throws Exception;
	public BoardVO getContentView(int no) throws Exception;
	public void write(BoardVO vo) throws Exception;
	public void writeFileUpload(BoardVO vo) throws Exception;
	public void writeImageFileUpload(BoardVO vo) throws Exception;
	public List<String> getBoardList();
	public void movePost(BoardVO vo);
	public void updateBoard(BoardVO bvo) throws Exception;
	public void updateBoardFileUpload(BoardVO bvo) throws Exception;
	public void deleteBoard(int no) throws Exception;
	
	public List<BoardVO> getAllViewFindByTitle(HashMap map) throws Exception;
	public List<BoardVO> getAllViewFindByNick(HashMap map) throws Exception;
	public List<BoardVO> getAllViewFindByContent(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectTitle(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectNick(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectContent(HashMap map) throws Exception;
	
	public List<BoardVO> getAllViewFindByTitleWithGenre(HashMap map) throws Exception;
	public List<BoardVO> getAllViewFindByNickWithGenre(HashMap map) throws Exception;
	public List<BoardVO> getAllViewFindByContentWithGenre(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectTitleWithGenre(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectNickWithGenre(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectContentWithGenre(HashMap map) throws Exception;
	
	public void updatePointWrite(String memberId) throws Exception;
	
	public List<BoardVO> getAllViewFindByGenreTitle(HashMap map) throws Exception;
	public List<BoardVO> getAllViewFindByGenreNick(HashMap map) throws Exception;
	public List<BoardVO> getAllViewFindByGenreContent(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectGenreTitle(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectGenreNick(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectGenreContent(HashMap map) throws Exception;
	
	public List<BoardVO> getAllViewFindByGenre(HashMap map) throws Exception;
	public int getBoardTotalCountBySelectGenre(HashMap map) throws Exception;
	
	public List<BoardVO> getAllViewMain()throws Exception;
	public List<BoardVO> getAllViewMainByView()throws Exception;
	public List<BoardVO> getViewMainByShare()throws Exception;
	public List<BoardVO> getViewMainByReview()throws Exception;
	
	public void updatePointFileDown(String id) throws Exception;
	
	public int recommend(HashMap map)throws Exception;
	public int unrecommend(HashMap map)throws Exception;
	public int checkRecommend(HashMap map)throws Exception;
	public int recommendCount(int no)throws Exception;
	public int unrecommendCount(int no)throws Exception;
}
